The controller is intended to execute at least one user program. User programs are programs which can be created using an engineering system, for example, and run on a controller. In the case of a machine tool for example, a user program can be used to program a sequence of control instructions for at least one feed axis of the machine tool. In this case, a tool of the machine tool is intended to cover a contour of a workpiece, for example.
A user program can also be used, for example, to control a production process in a production machine, the production machine being a plastic injection molding machine, for example. The user program has, in particular, a sequence of instructions which can then be executed by a controller, for example a programmable logic controller (PLC). However, the controller may also be, for example, a CNC controller, an NC controller or else a drive regulator for an electrical machine, the controller having, in particular, both control functionality and regulating functionality.
A debugger can be used to test a program which can be executed on the controller. The debugger is a test program which makes it possible to test the user program, for example. A user who has designed (programmed) the user program, for example, can use the debugger to execute said user program step by step, the execution of the user program being able to be repeatedly interrupted. This makes it possible to detect errors in the user program, for example, or else to optimize the user program. As a result of the fact that the user programs are becoming increasingly large and are of more complex design, it is becoming increasingly difficult to obtain these advantages of debugging using the debugger since, on account of the complexity, the states of the user program which have been stopped can scarcely be detected by the human user any more.